home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1980-01-04 | 5.4 KB | 261 lines |
- 1000 ' SCRIPT.BAS - Written by Mark Herring.
- 1010 CLEAR 5000:DEFINT A-Z
- 1020 DEF FNN$(X)=RIGHT$(STR$(X),LEN(STR$(X))-1)
- 1030 DIM EN(10),BBS$(10),NF$(10),NL$(10),PW$(10),NF(10)
- 1040 DIM AC$(10,10),A$(10,10),FS$(10,10),DC$(10,10)
- 1050 Q$=CHR$(34)
- 1060 OPEN "R",1,"PROCOMM.DIR",60
- 1070 FIELD 1,30 AS D$,30 AS N$
- 1080 COLOR 7,0
- 1090 CLS
- 1100 COLOR 0,7
- 1110 PRINT CHR$(201);STRING$(22,205);CHR$(187)
- 1120 PRINT CHR$(186);" Procomm Scriptwriter ";CHR$(186)
- 1130 PRINT CHR$(186);" by Sparkware ";CHR$(186)
- 1140 PRINT CHR$(200);STRING$(22,205);CHR$(188)
- 1150 COLOR 7,0
- 1160 FOR I=1 TO 10
- 1170 LOCATE 9+I,1
- 1180 PRINT STRING$(80,32);
- 1190 LOCATE 9+I,1
- 1200 PRINT "CALL directory entry number? ";
- 1210 LINE INPUT C$
- 1220 EN=VAL(C$)
- 1230 IF EN<1 OR EN>200 THEN I=10:GOTO 1330
- 1240 GET 1,EN+2
- 1250 BBS$=LEFT$(N$,INSTR(N$,CHR$(0)))
- 1260 IF BBS$="" THEN 1170
- 1270 IF ASC(BBS$)=46 THEN 1170
- 1280 LOCATE I+9,40
- 1290 PRINT BBS$;
- 1300 NB=NB+1
- 1310 EN(NB)=EN
- 1320 BBS$(NB)=BBS$
- 1330 NEXT I
- 1340 CLOSE 1
- 1350 IF NB=0 THEN 3440
- 1360 FOR I=1 TO NB
- 1370 COLOR 7,0
- 1380 CLS
- 1390 COLOR 0,7
- 1400 PRINT CHR$(201);STRING$(22,205);CHR$(187)
- 1410 PRINT CHR$(186);" Procomm Scriptwriter ";CHR$(186)
- 1420 PRINT CHR$(186);" by Sparkware ";CHR$(186)
- 1430 PRINT CHR$(200);STRING$(22,205);CHR$(188)
- 1440 COLOR 7,0
- 1450 LOCATE 1,30
- 1460 PRINT "BBS: ";
- 1470 COLOR 0,7
- 1480 PRINT " ";BBS$(I);" ";
- 1490 COLOR 7,0
- 1500 LOCATE 2,30
- 1510 PRINT "Enter your FIRST name? ";TAB(55);
- 1520 LINE INPUT NF$(I)
- 1530 IF NF$(I)="" THEN 1500
- 1540 LOCATE 3,30
- 1550 PRINT "Enter your LAST name? ";TAB(55);
- 1560 LINE INPUT NL$(I)
- 1570 LOCATE 4,30
- 1580 PRINT "Enter your Password? ";TAB(55);
- 1590 LINE INPUT PW$(I)
- 1600 IF PW$(I)="" THEN 1570
- 1610 LOCATE 7,1
- 1620 PRINT "Please enter information below. To stop, press the ";
- 1630 COLOR 0,7
- 1640 PRINT " RETURN ";
- 1650 COLOR 7,0
- 1660 PRINT " key."
- 1670 LOCATE 9,1
- 1680 PRINT STRING$(80,196);
- 1690 LOCATE 10,1
- 1700 COLOR 0,7
- 1710 PRINT " ACTION (U/D) ";
- 1720 LOCATE 10,17
- 1730 PRINT " FILE AREA ";
- 1740 LOCATE 10,30
- 1750 PRINT " FILESPEC ";
- 1760 LOCATE 10,44
- 1770 PRINT STRING$(13,32);"DESCRIPTION";STRING$(13,32);
- 1780 COLOR 7,0
- 1790 LOCATE 11,1
- 1800 PRINT STRING$(80,196);
- 1810 NF(I)=0
- 1820 LOCATE NF(I)+13,1,0
- 1830 PRINT STRING$(80,32);
- 1840 LOCATE NF(I)+13,7,1
- 1850 SOUND 5000,1
- 1860 AC$=INPUT$(1)
- 1870 IF AC$=CHR$(13) THEN 2140
- 1880 IF ASC(AC$)>96 THEN AC$=CHR$(ASC(AC$)-32)
- 1890 IF INSTR("UD",AC$)=0 THEN 1840
- 1900 PRINT AC$;
- 1910 LOCATE NF(I)+13,22,1
- 1920 SOUND 5000,1
- 1930 LINE INPUT A$
- 1940 IF VAL(A$)<1 THEN 1820
- 1950 LOCATE NF(I)+13,30,1
- 1960 SOUND 5000,1
- 1970 LINE INPUT FS$
- 1980 IF FS$="" THEN 1820
- 1990 C$=FS$:GOSUB 10000:FS$=C$
- 2000 IF AC$="D" THEN 2040
- 2010 LOCATE NF(I)+13,44,1
- 2020 LINE INPUT DC$
- 2030 IF DC$="" THEN 1820
- 2040 NF(I)=NF(I)+1
- 2050 AC$(I,NF(I))=AC$
- 2060 A$(I,NF(I))=A$
- 2070 FS$(I,NF(I))=FS$
- 2080 DC$(I,NF(I))=DC$
- 2090 IF AC$="U" THEN 2130
- 2100 IF INSTR(FS$,".ARC")>0 THEN ARC=1
- 2110 IF INSTR(FS$,".LBR")>0 THEN ARC=1
- 2120 IF INSTR(FS$,".LQR")>0 THEN ARC=1
- 2130 IF NF(I)<10 THEN 1820
- 2140 NEXT I
- 2150 OPEN "O",1,"TRANSFER.CMD"
- 2160 PRINT#1,"/*************************************************************/"
- 2170 PRINT#1,"/* */"
- 2180 PRINT#1,"/* Automatic downloading for FIDOs */"
- 2190 PRINT#1,"/* */"
- 2200 PRINT#1,"/*************************************************************/"
- 2210 PRINT#1,"/"
- 2220 PRINT#1,"/ Date created: ";DATE$
- 2230 PRINT#1,"/"
- 2240 PRINT#1,"/ Boards called:"
- 2250 PRINT#1,"/"
- 2260 FOR I=1 TO NB
- 2270 IF NF(I)>0 THEN PRINT#1,"/ ";BBS$(I)
- 2280 NEXT I
- 2290 PRINT#1,"/"
- 2300 PRINT#1,"%LO";Q$;"PROCOMM.LOG";Q$
- 2310 PRINT#1,"%E7"
- 2320 PRINT#1,"%XN"
- 2330 FOR I=1 TO NB
- 2340 IF NF(I)=0 THEN 2710
- 2350 PRINT#1,"%C";Q$;FNN$(EN(I));Q$
- 2360 FOR J=1 TO 4
- 2370 PRINT#1,"%T";Q$;"!";Q$
- 2380 PRINT#1,"%W";Q$;"1";Q$
- 2390 NEXT J
- 2400 PRINT#1,"%T";Q$;"!";Q$
- 2410 PRINT#1,"%I";Q$;"Your FIRST name:";Q$
- 2420 PRINT#1,"%T";Q$;NF$(I);"!";Q$
- 2430 PRINT#1,"%I";Q$;"Your LAST name:";Q$
- 2440 PRINT#1,"%T";Q$;NL$(I);"!";Q$
- 2450 PRINT#1,"%I";Q$;"right? (y,n)";Q$
- 2460 PRINT#1,"%T";Q$;"Y";Q$
- 2470 PRINT#1,"%I";Q$;"Password:";Q$
- 2480 PRINT#1,"%T";Q$;PW$(I);"!";Q$
- 2490 FOR J=1 TO 3
- 2500 PRINT#1,"%I";Q$;"More ?";Q$
- 2510 PRINT#1,"%T";Q$;"!";Q$
- 2520 NEXT J
- 2530 PRINT#1,"%I";Q$;"Command:";Q$
- 2540 PRINT#1,"%T";Q$;"F!";Q$
- 2550 FOR J=1 TO NF(I)
- 2560 PRINT#1,"%I";Q$;"Command:";Q$
- 2570 PRINT#1,"%T";Q$;"A";A$(I,J);"!";Q$
- 2580 PRINT#1,"%I";Q$;"Command:";Q$
- 2590 IF AC$(I,J)="D" THEN 2650
- 2600 PRINT#1,"%T";Q$;"UX ";FS$(I,J);"!";Q$
- 2610 PRINT#1,"%XS";Q$;FS$(I,J);Q$
- 2620 PRINT#1,"%I";Q$;"describe ";FS$(I,J);Q$
- 2630 PRINT#1,"%T";Q$;DC$(I,J);"!";Q$
- 2640 GOTO 2670
- 2650 PRINT#1,"%T";Q$;"DX ";FS$(I,J);"!";Q$
- 2660 PRINT#1,"%XR";Q$;FS$(I,J);Q$
- 2670 NEXT J
- 2680 PRINT#1,"%I";Q$;"Command:";Q$
- 2690 PRINT#1,"%T";Q$;"GN!";Q$
- 2700 IF I<NB THEN PRINT#1,"%W";Q$;"10";Q$
- 2710 NEXT I
- 2720 PRINT#1,"%Q"
- 2730 CLOSE 1
- 2740 IF ARC=0 THEN 3030
- 2750 OPEN "O",1,"UNPACK.BAT"
- 2760 FOR I=1 TO NB
- 2770 IF NF(I)=0 THEN 3060
- 2780 FOR J=1 TO NF(I)
- 2790 IN=INSTR(FS$(I,J),".ARC")
- 2800 IF IN>0 THEN 2850
- 2810 IN=INSTR(FS$(I,J),".LBR")
- 2820 IF IN>0 THEN 2850
- 2830 IN=INSTR(FS$(I,J),".LQR")
- 2840 IF IN=0 THEN 3020
- 2850 DIR$=LEFT$(FS$(I,J),IN-1)
- 2860 IF DIR$="" THEN 3020
- 2870 PRINT#1,"MKDIR ";DIR$
- 2880 PRINT#1,"COPY ";FS$(I,J);" .\";DIR$
- 2890 PRINT#1,"DEL ";FS$(I,J)
- 2900 PRINT#1,"CHDIR ";DIR$
- 2910 IF INSTR(FS$(I,J),".ARC")>0 THEN 2960
- 2920 IF INSTR(FS$(I,J),".LBR")>0 THEN 2940
- 2930 PRINT#1,"UNSQ ";FS$(I,J)
- 2940 PRINT#1,"LU -A ";DIR$
- 2950 GOTO 2970
- 2960 PRINT#1,"ARC XW ";DIR$
- 2970 PRINT#1,"DEL ";FS$(I,J)
- 2980 IF INSTR(FS$(I,J),".LQR")>0 THEN PRINT#1,"DEL ";DIR$;".LBR"
- 2990 PRINT#1,"CHDIR .."
- 3000 NEXT J
- 3010 NEXT I
- 3020 CLOSE 1
- 3030 FOR I=1 TO 4
- 3040 LOCATE I,30,0
- 3050 PRINT STRING$(50,32);
- 3060 NEXT I
- 3070 FOR I=7 TO 23
- 3080 LOCATE I,1,0
- 3090 PRINT STRING$(80,32);
- 3100 NEXT I
- 3110 LOCATE 9,1
- 3120 PRINT "The current time is ";TIME$
- 3130 LOCATE 12,1,1
- 3140 COLOR 0,7
- 3150 PRINT " ENTER ";
- 3160 COLOR 7,0
- 3170 PRINT " the current time: ";
- 3180 LINE INPUT T$
- 3190 IF T$<>"" THEN TIME$=T$
- 3200 LOCATE 15,1,1
- 3210 PRINT "Please enter the desired start time? ";
- 3220 LINE INPUT T$
- 3230 IF T$="" THEN 3030
- 3240 FOR I=9 TO 15 STEP 3
- 3250 LOCATE I,1,0
- 3260 PRINT STRING$(80,32);
- 3270 NEXT I
- 3280 LOCATE 2,30,0
- 3290 PRINT "Current time is now:";
- 3300 LOCATE 3,30
- 3310 PRINT "Procomm will automatically start at ";T$;".";
- 3320 LOCATE 4,30
- 3330 PRINT "Press the ";
- 3340 COLOR 0,7
- 3350 PRINT " ESC ";
- 3360 COLOR 7,0
- 3370 PRINT " key to ABORT.";
- 3380 LOCATE 2,51,0
- 3390 PRINT TIME$;
- 3400 IF INKEY$=CHR$(27) THEN 3440
- 3410 IF LEFT$(TIME$,LEN(T$))<>T$ THEN 3380
- 3420 CLS
- 3430 SHELL "PROCOMM /FTRANSFER /S"
- 3440 CLS
- 3450 IF ARC=1 THEN SHELL "UNPACK"
- 3460 CLS
- 3470 SHELL "DIR *."
- 3480 SYSTEM
- 3490 END
- 3500 '
- 10000 IF C$="" THEN 10070
- 10010 FOR I0=1 TO LEN(C$)
- 10020 A=ASC(MID$(C$,I0,1))
- 10030 IF A<97 OR A>122 THEN 10060
- 10040 A=A-32
- 10050 MID$(C$,I0,1)=CHR$(A)
- 10060 NEXT I0
- 10070 RETURN
- 10080 '
-